﻿//////////////////////////////////////////////////////////////////////////////
//
//  Copyright © 1998-2024 Glodon Company Limited.  All rights reserved.
//
//  Use of this software is subject to the terms of the Glodon license
//  agreement provided at the time of installation or download, or which
//  otherwise accompanies this software in either electronic or hard copy form.  
//
//////////////////////////////////////////////////////////////////////////////


#pragma once

#include <stdint.h>

namespace gfam
{
    /// \brief 机电连接件类型
    enum class MEPConnectorType : int32_t
    {
        Ventilating = 0,      ///< 风管
        WaterPipe = 1,        ///< 水管
        WirePipe = 2,         ///< 线管
        CableTray = 3,        ///< 桥架
        Electrical = 4,       ///< 电气
        Connector2d = 5       ///< 二维连接件
    };

    /// \brief 连接点形状
    enum class ConnectorShapType : int32_t
    {
        Rect = 0, ///< 矩形
        Circle,   ///< 圆形
        Ellipse,  ///< 椭圆形
    };

    /// \brief 风管系统类型
    enum class VentilatingSystemType : int32_t
    {
        UndefinedSystemType = -1,                     ///< 未定义
        SupplyAir = 1,                                ///< 送风
        ReturnAir = 2,                                ///< 回风
        FreshAir = 3,                                 ///< 新风
        ExhaustAir = 4,                               ///< 排风
        OtherAir = 9,                                 ///< 其它

        // 在此定义之前补充新的风系统分类
        Global = 10                                   ///< 不限
    };

    /// \brief 电气系统类型
    enum class ElectricalSystemType : int32_t
    {
        UndefinedSystemType = -1,                      ///< 未定义

        // 强电
        Lighting = 41,                                ///< 照明
        PowerSupplyAndDistribution = 42,              ///< 供配电
        LightningProtectionGrounding = 43,            ///< 防雷接地

        // 弱电
        WeakCurrent = 51,                             ///< 弱电
        FireAlarm = 52,                               ///< 火灾自动报警

        OtherElectrical = 59,                         ///< 其它

        // 在此定义之前补充新的电气系统分类
        GlobalElectricity = 60,                       ///< 不限
    };

    /// \brief 桥架系统类型
    enum class CableTraySystemType : int32_t
    {
        CTS_UndefinedSystemType = -1,   ///< 不限
    };

    /// \brief 水管系统类型
    enum class WaterSystemType : int32_t
    {
        UndefinedSystemType = -1,                     ///< 未定义
        SupplyHydronic = 11,                          ///< 循环供水
        ReturnHydronic = 12,                          ///< 循环回水
        RefrigerantPipe = 13,                         ///< 冷媒管
        CondenserPipe = 14,                           ///< 冷凝水

        WaterSupply = 21,                             ///< 给水
        SupplyHotWater = 22,                          ///< 热给水
        ReturnHotWater = 23,                          ///< 热回水
        Drainage = 24,                                ///< 排水
        Vent = 25,                                    ///< 通气
        FireHyrant = 26,                              ///< 消火栓
        FireProtectSprinkler = 27,                    ///< 自动喷水
        FireProtectDry = 28,                          ///< 干式消防
        FireProtectGas = 29,                          ///< 气体灭火
        OtherPipe = 39,                               ///< 其它

        // 在此定义之前补充新的水系统分类
        Global = 40,                                  ///< 不限
    };

    /// \brief 线管系统类型
    enum class WireSystemType : int32_t
    {
        WireNodefine = -1,  ///< 不限
    };

    /// \brief 流向类型
    enum class FlowDirectionType : int32_t
    {
        Bidirectional = 0,               ///< 双向
        In = 1,                          ///< 进
        Out = 2                          ///< 出
    };
}

